home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / prog / re11.arj / REDEMO1.C < prev    next >
C/C++ Source or Header  |  1994-02-10  |  1KB  |  51 lines

  1. /* ************************************************************** */
  2. /* redemo1.c For Turbo C - Demonstrates how to access a resource  */
  3. /*                         file's header information.             */
  4. /*                                                                */
  5. /* ************************************************************** */
  6.  
  7. #include <stdio.h>
  8.  
  9. struct resheadrec {
  10.     char         rfid[3];    /* resource file id - RES    */
  11.     unsigned int resitems;   /* number of resource items  */
  12.   };
  13.  
  14. struct resitemrec {
  15.     int  rt;         /* resource type */
  16.     char rid[12];    /* resource id   */
  17.     long offset;     /* file offset   */
  18.     long length;     /* file size     */
  19.   };
  20.  
  21.  
  22. void dis_res_header(char *filename)
  23. {
  24.  FILE *F;
  25.  int i;
  26.  struct resitemrec res;
  27.  struct resheadrec resh;
  28.  
  29.  F=fopen(filename,"rb");
  30.  
  31.  if (F!=NULL)
  32.  {
  33.    fread(&resh,sizeof(resh),1,F);               /* res header       */
  34.    printf(" RES ID = %.3s \n RES ITEMS = %u \n",resh.rfid,resh.resitems);
  35.    for(i=0;i<resh.resitems;i++)
  36.    {
  37.      fread(&res,sizeof(res),1,F);               /* res item record  */
  38.      printf(" ITEM# %d TYPE= %u ID= %.12s OFFSET= %lu LENGTH= %lu \n",
  39.               i+1,res.rt,res.rid,res.offset,res.length);
  40.    }
  41.    fclose(F);
  42.  }
  43. }
  44.  
  45.  
  46. void main()
  47. {
  48.   dis_res_header("pics.res");
  49.   getch();
  50. }
  51.